#include "Prototype.h"

#include <iostream>
#include <cstring>
Prototype::Prototype()
{
}


Prototype::~Prototype()
{
}

ConcretePrototype::ConcretePrototype()
{
	concrete_int = new char[20];
	strcpy(concrete_int,  "1");
}

ConcretePrototype::ConcretePrototype(const ConcretePrototype & cp)
{
	std::cout << "concretePrototype copy...deep copy" << std::endl;
	concrete_int = new char[20];
	strcpy(concrete_int,  cp.concrete_int);
	
}

ConcretePrototype::~ConcretePrototype()
{
}

Prototype * ConcretePrototype::Clone() const
{
	return  new ConcretePrototype(*this);
}
